#ifndef Pile
#define Pile

#include "Card.h"

//Piles never have more than 19 cards
const int PILE_MAX_CARDS = 19;

//If the column ever gets more than 10 cards, this offset is applied for the rest of the cards display.
const int COLUMN_OFFSET_X = 2;
const int COLUMN_OFFSET_Y = 9;
const card EMPTY_PILE;

//3 possible type of piles, Stacks, Columns and Devil.
const enum pileType :char
{
	STACK = 'S',
	DEVIL = 'D',
	COLUMN = 'C'
};


struct pile
{
	int xPos;
	int yPos;
	int nb;
	int id;
	pileType type;
	card cards[PILE_MAX_CARDS];
};

void Initialize(pile &p, pileType type, int xPos, int yPos, int id = 0);
void Display(const pile &p);
void Populate(pile& p);


#endif

